package org.edu.modules.sbzc.fund.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.edu.common.base.BaseEntity;
import org.hibernate.validator.constraints.Length;

import java.io.Serializable;
import java.util.Date;

/**
 * entity-设备资产维修表
 */
@TableName("ve_sbzc_zc_maintain")
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="设备资产维修表对象", description="ve_sbzc_zc_maintain")
public class VeSbzcZcMaintain extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableField
    @ApiModelProperty(value = "资产ID")
    private Integer assetId;

    @TableField
    @ApiModelProperty(value = "资产编码")
    private String assetCode;

    @TableField
    @ApiModelProperty(value = "资产名称")
    private String assetName;

    @TableField
    @ApiModelProperty(value = "所属部门")
    private Integer deptOwn;

    @TableField
    @ApiModelProperty(value = "维修单位")
    private Integer deptMaintain;

    @TableField
    @ApiModelProperty(value = "维修人")
    private String maintainUserId;

    @TableField
    @ApiModelProperty(value = "维修人姓名")
    @Length(max = 16)
    private String maintainUserName;

    @TableField
    @ApiModelProperty(value = "批准人,默认为当前操作管理员")
    private String checkUserId;

    @TableField
    @ApiModelProperty(value = "批准人姓名")
    @Length(max = 16)
    private String checkUserName;

    @TableField
    @ApiModelProperty(value = "维修时间")
    @JsonFormat(timezone="GMT+8",locale="zh",  pattern="yyyy-MM-dd")
    private Date maintainDate;

    @TableField
    @ApiModelProperty(value = "情况说明")
    @Length(max = 200)
    private String descrption;

    @TableField
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(timezone="GMT+8",locale="zh",  pattern="yyyy-MM-dd")
    private Date createTime;

    @TableField
    @ApiModelProperty(value = "备注")
    @Length(max = 500)
    private String remark;

    @TableField
    @ApiModelProperty(value = "")
    @Length(max = 50)
    private String assetStatus;

    @TableField
    @ApiModelProperty(value = "维修状态（1.维修完成，2 维修中）")
    private Integer status;

    @TableField
    @ApiModelProperty(value = "维修完成时间")
    @JsonFormat(timezone="GMT+8",locale="zh",  pattern="yyyy-MM-dd")
    private Date maintainFinishDate;
}
